home *** CD-ROM | disk | FTP | other *** search
/ Developer CD Series 1998 August: Technology Seed / August 1998 ADC Seed CD.toast / Mac OS 8.5b2 / allegro-b2-pseudo-SDK / AIncludes / Navigation.a < prev    next >
Encoding:
Text File  |  1998-07-17  |  16.3 KB  |  416 lines  |  [TEXT/MPS ]

  1. ;
  2. ;    File:        Navigation.a
  3. ;
  4. ;    Contains:    Navigation Services Interfaces
  5. ;
  6. ;    Version:    Technology:    1.1
  7. ;                Release:    Allego Seed, Use with 3.1 Universal Interfaces
  8. ;
  9. ;    Copyright:    © 1996-1998 by Apple Computer, Inc., all rights reserved
  10. ;
  11. ;    Bugs?:        Please include the the file and version information (from above) with
  12. ;                the problem description.  Developers belonging to one of the Apple
  13. ;                developer programs can submit bug reports to:
  14. ;
  15. ;                    devsupport@apple.com
  16. ;
  17. ;
  18.     IF &TYPE('__NAVIGATION__') = 'UNDEFINED' THEN
  19. __NAVIGATION__ SET 1
  20.  
  21.     IF &TYPE('__MACTYPES__') = 'UNDEFINED' THEN
  22.     include 'MacTypes.a'
  23.     ENDIF
  24.     IF &TYPE('__APPLEEVENTS__') = 'UNDEFINED' THEN
  25.     include 'AppleEvents.a'
  26.     ENDIF
  27.     IF &TYPE('__TRANSLATION__') = 'UNDEFINED' THEN
  28.     include 'Translation.a'
  29.     ENDIF
  30.     IF &TYPE('__MACWINDOWS__') = 'UNDEFINED' THEN
  31.     include 'MacWindows.a'
  32.     ENDIF
  33.     IF &TYPE('__CODEFRAGMENTS__') = 'UNDEFINED' THEN
  34.     include 'CodeFragments.a'
  35.     ENDIF
  36.  
  37.  
  38.  
  39. kNavMissingKindStringErr        EQU        -5699
  40. kNavInvalidCustomControlMessageErr EQU    -5698
  41. kNavCustomControlMessageFailedErr EQU    -5697
  42. kNavInvalidSystemConfigErr        EQU        -5696
  43.  
  44.  
  45. kNavDialogOptionsVersion        EQU        0
  46. kNavReplyRecordVersion            EQU        0
  47. kNavCBRecVersion                EQU        0
  48. kNavFileOrFolderVersion            EQU        0
  49. kNavMenuItemSpecVersion            EQU        0
  50. ; typedef UInt16                         NavDataVersion
  51.  
  52.  
  53.                                                             ; input action codes for NavAskSaveChanges() 
  54. kNavSaveChangesClosingDocument    EQU        1
  55. kNavSaveChangesQuittingApplication EQU    2
  56. kNavSaveChangesOther            EQU        0
  57. ; typedef UInt32                         NavAskSaveChangesAction
  58.  
  59.  
  60.                                                             ; result codes for NavAskSaveChanges() 
  61. kNavAskSaveChangesSave            EQU        1
  62. kNavAskSaveChangesCancel        EQU        2
  63. kNavAskSaveChangesDontSave        EQU        3
  64. ; typedef UInt32                         NavAskSaveChangesResult
  65.  
  66.  
  67.                                                             ; result codes for NavAskDiscardChanges() 
  68. kNavAskDiscardChanges            EQU        1
  69. kNavAskDiscardChangesCancel        EQU        2
  70. ; typedef UInt32                         NavAskDiscardChangesResult
  71.  
  72.  
  73.                                                             ; which elements are being filtered for objects: 
  74. kNavFilteringBrowserList        EQU        0
  75. kNavFilteringFavorites            EQU        1
  76. kNavFilteringRecents            EQU        2
  77. kNavFilteringShortCutVolumes    EQU        3
  78. kNavFilteringLocationPopup        EQU        4
  79. ; typedef short                         NavFilterModes
  80.  
  81. NavFileOrFolderInfo        RECORD 0
  82. version                     ds.w    1                ; offset: $0 (0)
  83. isFolder                 ds.b    1                ; offset: $2 (2)
  84. visible                     ds.b    1                ; offset: $3 (3)
  85. creationDate             ds.l    1                ; offset: $4 (4)
  86. modificationDate         ds.l    1                ; offset: $8 (8)
  87. locked                     ds.b    1                ; offset: $C (12)        ;  file is locked 
  88. resourceOpen             ds.b    1                ; offset: $D (13)        ;  resource fork is opened 
  89. dataOpen                 ds.b    1                ; offset: $E (14)        ;  data fork is opened 
  90. reserved1                 ds.b    1                ; offset: $F (15)
  91. dataSize                 ds.l    1                ; offset: $10 (16)        ;  size of the data fork 
  92. resourceSize             ds.l    1                ; offset: $14 (20)        ;  size of the resource fork 
  93. finderInfo                 ds        FInfo            ; offset: $18 (24)        ;  more file info: 
  94. finderXInfo                 ds        FXInfo            ; offset: $28 (40)
  95.                          ORG 12
  96. shareable                 ds.b    1                ; offset: $C (12)
  97. sharePoint                 ds.b    1                ; offset: $D (13)
  98. mounted                     ds.b    1                ; offset: $E (14)
  99. readable                 ds.b    1                ; offset: $F (15)
  100. writeable                 ds.b    1                ; offset: $10 (16)
  101. reserved2                 ds.b    1                ; offset: $11 (17)
  102. numberOfFiles             ds.l    1                ; offset: $12 (18)
  103. finderDInfo                 ds        DInfo            ; offset: $16 (22)
  104. finderDXInfo             ds        DXInfo            ; offset: $26 (38)
  105. reserved3                 ds.b    214                ; offset: $36 (54)
  106. sizeof                     EQU *                    ; size:   $10C (268)
  107.                         ENDR
  108. NavEventDataInfo        RECORD 0
  109. event                     ds.l    1                ; offset: $0 (0)        ;  for event processing 
  110.                          ORG 0
  111. param                     ds.l    1                ; offset: $0 (0)        ;  points to event specific data 
  112. sizeof                     EQU *                    ; size:   $4 (4)
  113.                         ENDR
  114. NavEventData            RECORD 0
  115. eventDataParms             ds        NavEventDataInfo ; offset: $0 (0)        ;  the event data 
  116. itemHit                     ds.w    1                ; offset: $4 (4)        ;  the dialog item number 
  117. sizeof                     EQU *                    ; size:   $6 (6)
  118.                         ENDR
  119. ; typedef UInt32                         NavContext
  120.  
  121. NavCBRec                RECORD 0
  122. version                     ds.w    1                ; offset: $0 (0)
  123. context                     ds.l    1                ; offset: $2 (2)        ;  used by customization code to call Navigation Services 
  124. window                     ds.l    1                ; offset: $6 (6)        ;  the dialog 
  125. customRect                 ds        Rect            ; offset: $A (10)        ;  local coordinate rectangle of customization area 
  126. previewRect                 ds        Rect            ; offset: $12 (18)        ;  local coordinate rectangle of the preview area 
  127. eventData                 ds        NavEventData    ; offset: $1A (26)
  128. reserved                 ds.b    222                ; offset: $20 (32)
  129. sizeof                     EQU *                    ; size:   $FE (254)
  130.                         ENDR
  131. ; typedef struct NavCBRec *                NavCBRecPtr
  132.  
  133.  
  134. kNavCBEvent                        EQU        0                    ; an event has occurred (update, idle events, etc.) 
  135. kNavCBCustomize                    EQU        1                    ; protocol for negotiating customization space 
  136. kNavCBStart                        EQU        2                    ; the navigation dialog is starting up 
  137. kNavCBTerminate                    EQU        3                    ; the navigation dialog is closing down 
  138. kNavCBAdjustRect                EQU        4                    ; the navigation dialog is being resized 
  139. kNavCBNewLocation                EQU        5                    ; user has chosen a new location in the browser 
  140. kNavCBShowDesktop                EQU        6                    ; user has navigated to the desktop 
  141. kNavCBSelectEntry                EQU        7                    ; user has made a selection in the browser 
  142. kNavCBPopupMenuSelect            EQU        8                    ; signifies that a popup menu selection was made 
  143. kNavCBAccept                    EQU        9                    ; user has accepted the navigation dialog 
  144. kNavCBCancel                    EQU        10                    ; user has cancelled the navigation dialog 
  145. kNavCBAdjustPreview                EQU        11                    ; preview button was clicked or the preview was resized 
  146. ; typedef SInt32                         NavEventCallbackMessage
  147.  
  148. ; typedef void *                        NavCallBackUserData
  149.  
  150. ;  for events and customization: 
  151. ;  for preview support: 
  152. ;  filtering callback information: 
  153.  
  154. kNavCtlShowDesktop                EQU        0                    ;    show desktop,                 parms = nil 
  155. kNavCtlSortBy                    EQU        1                    ;    sort key field,             parms->NavSortKeyField 
  156. kNavCtlSortOrder                EQU        2                    ;    sort order,                    parms->NavSortOrder 
  157. kNavCtlScrollHome                EQU        3                    ;    scroll list home,            parms = nil 
  158. kNavCtlScrollEnd                EQU        4                    ;    scroll list end,            parms = nil 
  159. kNavCtlPageUp                    EQU        5                    ;    page list up,                parms = nil 
  160. kNavCtlPageDown                    EQU        6                    ;    page list down,                parms = nil 
  161. kNavCtlGetLocation                EQU        7                    ;    get current location,        parms<-AEDesc 
  162. kNavCtlSetLocation                EQU        8                    ;    set current location,        parms->AEDesc 
  163. kNavCtlGetSelection                EQU        9                    ;    get current selection,        parms<-AEDescList 
  164. kNavCtlSetSelection                EQU        10                    ;    set current selection,        parms->AEDescList 
  165. kNavCtlShowSelection            EQU        11                    ;    make selection visible,        parms = nil 
  166. kNavCtlOpenSelection            EQU        12                    ;    open view of selection,        parms = nil 
  167. kNavCtlEjectVolume                EQU        13                    ;    eject volume,                parms->vRefNum 
  168. kNavCtlNewFolder                EQU        14                    ;    create a new folder,        parms->StringPtr 
  169. kNavCtlCancel                    EQU        15                    ;    cancel dialog,                parms = nil 
  170. kNavCtlAccept                    EQU        16                    ;    accept dialog default,        parms = nil 
  171. kNavCtlIsPreviewShowing            EQU        17                    ;    query preview status,        parms<-Boolean 
  172. kNavCtlAddControl                EQU        18                    ;  add one control to dialog,    parms->ControlHandle 
  173. kNavCtlAddControlList            EQU        19                    ;    add control list to dialog,    parms->Handle (DITL rsrc) 
  174. kNavCtlGetFirstControlID        EQU        20                    ;    get 1st control ID,            parms<-UInt16 
  175. kNavCtlSelectCustomType            EQU        21                    ;    select a custom menu item    parms->NavMenuItemSpec 
  176. kNavCtlSelectAllType            EQU        22                    ;  select an "All" menu item    parms->SInt16 
  177. kNavCtlGetEditFileName            EQU        23                    ;    get save dlog's file name    parms<-StringPtr 
  178. kNavCtlSetEditFileName            EQU        24                    ;    set save dlog's file name    parms->StringPtr 
  179. kNavCtlSelectEditFileName        EQU        25                    ;    select save dlog file name    parms->ControlEditTextSelectionRec (v1.1 only) 
  180. ; typedef SInt32                         NavCustomControlMessage
  181.  
  182.  
  183. kNavAllKnownFiles                EQU        0
  184. kNavAllReadableFiles            EQU        1
  185. kNavAllFiles                    EQU        2
  186. ; typedef UInt16                         NavPopupMenuItem
  187.  
  188.  
  189. kNavSortNameField                EQU        0
  190. kNavSortDateField                EQU        1
  191. ; typedef UInt16                         NavSortKeyField
  192.  
  193.  
  194. kNavSortAscending                EQU        0
  195. kNavSortDescending                EQU        1
  196. ; typedef UInt16                         NavSortOrder
  197.  
  198.  
  199. kNavDefaultNavDlogOptions        EQU        $000000E4            ; use defaults for all the options 
  200. kNavNoTypePopup                    EQU        $00000001            ; don't show file type/extension popup on Open/Save 
  201. kNavDontAutoTranslate            EQU        $00000002            ; don't automatically translate on Open 
  202. kNavDontAddTranslateItems        EQU        $00000004            ; don't add translation choices on Open/Save 
  203. kNavAllFilesInPopup                EQU        $00000010            ; "All Files" menu item in the type popup on Open 
  204. kNavAllowStationery                EQU        $00000020            ; allow saving of stationery files 
  205. kNavAllowPreviews                EQU        $00000040            ; allow to show previews 
  206. kNavAllowMultipleFiles            EQU        $00000080            ; allow multiple items to be selected 
  207. kNavAllowInvisibleFiles            EQU        $00000100            ; allow invisible items to be shown 
  208. kNavDontResolveAliases            EQU        $00000200            ; don't resolve aliases 
  209. kNavSelectDefaultLocation        EQU        $00000400            ; make the default location the browser selection 
  210. kNavSelectAllReadableItem        EQU        $00000800            ; make the dialog select "All Readable Documents" on Open 
  211. ; typedef UInt32                         NavDialogOptionFlags
  212.  
  213.  
  214. kNavTranslateInPlace            EQU        0                    ;    translate in place, replacing translation source file (default for Save) 
  215. kNavTranslateCopy                EQU        1                    ;    translate to a copy of the source file (default for Open) 
  216. ; typedef UInt32                         NavTranslationOptions
  217.  
  218. NavMenuItemSpec            RECORD 0
  219. version                     ds.w    1                ; offset: $0 (0)
  220. menuCreator                 ds.l    1                ; offset: $2 (2)
  221. menuType                 ds.l    1                ; offset: $6 (6)
  222. menuItemName             ds        Str255            ; offset: $A (10)
  223. reserved                 ds.b    245                ; offset: $10A (266)
  224.                          ORG 512
  225. sizeof                     EQU *                    ; size:   $200 (512)
  226.                         ENDR
  227. ; typedef struct NavMenuItemSpec *        NavMenuItemSpecPtr
  228.  
  229. ; typedef NavMenuItemSpecPtr *            NavMenuItemSpecHandle
  230.  
  231. NavTypeList                RECORD 0
  232. componentSignature         ds.l    1                ; offset: $0 (0)
  233. reserved                 ds.w    1                ; offset: $4 (4)
  234. osTypeCount                 ds.w    1                ; offset: $6 (6)
  235. osType                     ds.l    1                ; offset: $8 (8) <-- really an array of length one
  236. sizeof                     EQU *                    ; size:   $C (12)
  237.                         ENDR
  238. ; typedef struct NavTypeList *            NavTypeListPtr
  239.  
  240. ; typedef NavTypeListPtr *                NavTypeListHandle
  241.  
  242. NavDialogOptions        RECORD 0
  243. version                     ds.w    1                ; offset: $0 (0)
  244. dialogOptionFlags         ds.l    1                ; offset: $2 (2)        ;  option flags for affecting the dialog's behavior 
  245. location                 ds        Point            ; offset: $6 (6)        ;  top-left location of the dialog, or {-1,-1} for default position 
  246. clientName                 ds        Str255            ; offset: $A (10)
  247. windowTitle                 ds        Str255            ; offset: $10A (266)
  248. actionButtonLabel         ds        Str255            ; offset: $20A (522)    ;  label of the default button (or null string for default) 
  249. cancelButtonLabel         ds        Str255            ; offset: $30A (778)    ;  label of the cancel button (or null string for default) 
  250. savedFileName             ds        Str255            ; offset: $40A (1034)    ;  default name for text box in NavPutFile (or null string for default) 
  251. message                     ds        Str255            ; offset: $50A (1290)    ;  custom message prompt (or null string for default) 
  252. preferenceKey             ds.l    1                ; offset: $60A (1546)    ;  a key for to managing preferences for using multiple utility dialogs 
  253. popupExtension             ds.l    1                ; offset: $60E (1550)    ;  extended popup menu items, an array of NavMenuItemSpecs 
  254. reserved                 ds.b    494                ; offset: $612 (1554)
  255. sizeof                     EQU *                    ; size:   $800 (2048)
  256.                         ENDR
  257. ;  data returned by the utility dialogs: 
  258. NavReplyRecord            RECORD 0
  259. version                     ds.w    1                ; offset: $0 (0)
  260. validRecord                 ds.b    1                ; offset: $2 (2)        ;  open/save: true if the user confirmed a selection, false on cancel 
  261. replacing                 ds.b    1                ; offset: $3 (3)        ;  save: true if the user is overwriting an existing object for save 
  262. isStationery             ds.b    1                ; offset: $4 (4)        ;  save: true if the user wants to save an object as stationery 
  263. translationNeeded         ds.b    1                ; offset: $5 (5)        ;  save: translation is 'needed', open: translation 'has taken place' 
  264. selection                 ds        AEDescList        ; offset: $6 (6)        ;  open/save: list of AppleEvent descriptors of the chosen object(s) 
  265. keyScript                 ds.w    1                ; offset: $E (14)        ;  open/save: script in which the name of each item in 'selection' is to be displayed 
  266. fileTranslation             ds.l    1                ; offset: $10 (16)        ;  open/save: list of file translation specs of the chosen object(s), if translation is needed 
  267. reserved1                 ds.l    1                ; offset: $14 (20)
  268. reserved                 ds.b    231                ; offset: $18 (24)
  269.                          ORG 256
  270. sizeof                     EQU *                    ; size:   $100 (256)
  271.                         ENDR
  272. ;
  273. ; pascal OSErr NavLoad(void )
  274. ;
  275.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  276.         IMPORT_CFM_FUNCTION NavLoad
  277.     ENDIF
  278.  
  279. ;
  280. ; pascal OSErr NavUnload(void )
  281. ;
  282.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  283.         IMPORT_CFM_FUNCTION NavUnload
  284.     ENDIF
  285.  
  286. ;
  287. ; pascal UInt32 NavLibraryVersion(void )
  288. ;
  289.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  290.         IMPORT_CFM_FUNCTION NavLibraryVersion
  291.     ENDIF
  292.  
  293. ;
  294. ; pascal OSErr NavGetDefaultDialogOptions(NavDialogOptions *dialogOptions)
  295. ;
  296.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  297.         IMPORT_CFM_FUNCTION NavGetDefaultDialogOptions
  298.     ENDIF
  299.  
  300.  
  301. ;
  302. ; pascal OSErr NavGetFile(AEDesc *defaultLocation, NavReplyRecord *reply, NavDialogOptions *dialogOptions, NavEventUPP eventProc, NavPreviewUPP previewProc, NavObjectFilterUPP filterProc, NavTypeListHandle typeList, void *callBackUD)
  303. ;
  304.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  305.         IMPORT_CFM_FUNCTION NavGetFile
  306.     ENDIF
  307.  
  308. ;
  309. ; pascal OSErr NavPutFile(AEDesc *defaultLocation, NavReplyRecord *reply, NavDialogOptions *dialogOptions, NavEventUPP eventProc, OSType fileType, OSType fileCreator, void *callBackUD)
  310. ;
  311.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  312.         IMPORT_CFM_FUNCTION NavPutFile
  313.     ENDIF
  314.  
  315. ;
  316. ; pascal OSErr NavAskSaveChanges(NavDialogOptions *dialogOptions, NavAskSaveChangesAction action, NavAskSaveChangesResult *reply, NavEventUPP eventProc, void *callBackUD)
  317. ;
  318.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  319.         IMPORT_CFM_FUNCTION NavAskSaveChanges
  320.     ENDIF
  321.  
  322. ;
  323. ; pascal OSErr NavCustomAskSaveChanges(NavDialogOptions *dialogOptions, NavAskSaveChangesResult *reply, NavEventUPP eventProc, void *callBackUD)
  324. ;
  325.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  326.         IMPORT_CFM_FUNCTION NavCustomAskSaveChanges
  327.     ENDIF
  328.  
  329. ;
  330. ; pascal OSErr NavAskDiscardChanges(NavDialogOptions *dialogOptions, NavAskDiscardChangesResult *reply, NavEventUPP eventProc, void *callBackUD)
  331. ;
  332.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  333.         IMPORT_CFM_FUNCTION NavAskDiscardChanges
  334.     ENDIF
  335.  
  336. ;
  337. ; pascal OSErr NavChooseFile(AEDesc *defaultLocation, NavReplyRecord *reply, NavDialogOptions *dialogOptions, NavEventUPP eventProc, NavPreviewUPP previewProc, NavObjectFilterUPP filterProc, NavTypeListHandle typeList, void *callBackUD)
  338. ;
  339.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  340.         IMPORT_CFM_FUNCTION NavChooseFile
  341.     ENDIF
  342.  
  343. ;
  344. ; pascal OSErr NavChooseFolder(AEDesc *defaultLocation, NavReplyRecord *reply, NavDialogOptions *dialogOptions, NavEventUPP eventProc, NavObjectFilterUPP filterProc, void *callBackUD)
  345. ;
  346.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  347.         IMPORT_CFM_FUNCTION NavChooseFolder
  348.     ENDIF
  349.  
  350. ;
  351. ; pascal OSErr NavChooseVolume(AEDesc *defaultSelection, NavReplyRecord *reply, NavDialogOptions *dialogOptions, NavEventUPP eventProc, NavObjectFilterUPP filterProc, void *callBackUD)
  352. ;
  353.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  354.         IMPORT_CFM_FUNCTION NavChooseVolume
  355.     ENDIF
  356.  
  357. ;
  358. ; pascal OSErr NavChooseObject(AEDesc *defaultLocation, NavReplyRecord *reply, NavDialogOptions *dialogOptions, NavEventUPP eventProc, NavObjectFilterUPP filterProc, void *callBackUD)
  359. ;
  360.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  361.         IMPORT_CFM_FUNCTION NavChooseObject
  362.     ENDIF
  363.  
  364. ;
  365. ; pascal OSErr NavNewFolder(AEDesc *defaultLocation, NavReplyRecord *reply, NavDialogOptions *dialogOptions, NavEventUPP eventProc, void *callBackUD)
  366. ;
  367.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  368.         IMPORT_CFM_FUNCTION NavNewFolder
  369.     ENDIF
  370.  
  371. ;
  372. ; pascal OSErr NavTranslateFile(NavReplyRecord *reply, NavTranslationOptions howToTranslate)
  373. ;
  374.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  375.         IMPORT_CFM_FUNCTION NavTranslateFile
  376.     ENDIF
  377.  
  378. ;
  379. ; pascal OSErr NavCompleteSave(NavReplyRecord *reply, NavTranslationOptions howToTranslate)
  380. ;
  381.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  382.         IMPORT_CFM_FUNCTION NavCompleteSave
  383.     ENDIF
  384.  
  385. ;
  386. ; pascal OSErr NavCustomControl(NavContext context, NavCustomControlMessage selector, void *parms)
  387. ;
  388.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  389.         IMPORT_CFM_FUNCTION NavCustomControl
  390.     ENDIF
  391.  
  392. ;
  393. ; pascal OSErr NavDisposeReply(NavReplyRecord *reply)
  394. ;
  395.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  396.         IMPORT_CFM_FUNCTION NavDisposeReply
  397.     ENDIF
  398.  
  399. ;
  400. ; pascal Boolean NavServicesCanRun(void )
  401. ;
  402.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  403.         IMPORT_CFM_FUNCTION NavServicesCanRun
  404.     ENDIF
  405.  
  406.  
  407. ;
  408. ; pascal Boolean NavServicesAvailable(void)
  409. ;
  410.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  411.         IMPORT_CFM_FUNCTION NavServicesAvailable
  412.     ENDIF
  413.  
  414.     ENDIF ; __NAVIGATION__ 
  415.  
  416.